import bytedance.context
import bytedlogger
import logid

from apitest.engine import logging


def init_context():
    log_id = bytedance.context.get("logid") or bytedlogger.thread_storage.get(b'_logid')
    if not log_id:
        log_id = logid.generate()

    bytedance.context.set("logid", log_id)
    bytedlogger.thread_storage[b'_logid'] = bytes(log_id, encoding='utf-8')


init_context()


def get_log_id():
    log_id = bytedance.context.get("logid")
    if log_id is None:
        log_id = bytedlogger.thread_storage.get(b"_logid")
    return log_id


